#include "nodoarbol.h"

NodoArbol::NodoArbol(QString s,double val,NodoArbol* i,NodoArbol* d)
{
    this->simbolo=s;
    this->valor=val;
    this->izq=i;
    this->der=d;
}
NodoArbol::NodoArbol(double d)
{
    this->valor=d;
    this->der = NULL;
    this->izq = NULL;
}

bool NodoArbol::esHoja()
{
    return ((this->der == NULL) && (this->izq == NULL));
}

bool NodoArbol::operator<(NodoArbol n){
    return (valor < n.getValor());
}

bool NodoArbol::operator>(NodoArbol& n){
    return (this->getValor() > n.getValor());
}

bool NodoArbol::operator==(NodoArbol& n) {

    return (this->getValor()==n.getValor());

}

void NodoArbol::setSimbolo(QString s)
{
    this->simbolo=s;
}

NodoArbol::NodoArbol(QString s)
{
    this->simbolo=s;
    this->der=NULL;
    this->izq=NULL;
}

NodoArbol::NodoArbol()
{
    this->der = NULL;
    this->izq = NULL;
}

NodoArbol::NodoArbol(QString s,double d)
{
    this->simbolo=s;
    this->valor=d;
    this->der = NULL;
    this->izq = NULL;
}

void NodoArbol::setNodoDer(NodoArbol* d)
{
    this->der=d;
}

void NodoArbol::setNodoIzq(NodoArbol* i)
{
    this->izq=i;
}
void NodoArbol::setProba(double d)
{
    this->valor=d;
}


NodoArbol* NodoArbol::getDer()
{
    return this->der;
}

NodoArbol* NodoArbol::getIzq()
{
    return this->izq;
}

double NodoArbol::getValor()
{
    return this->valor;
}

QString NodoArbol::getSimbolo()
{
    return this->simbolo;
}
